﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

/*=====================================================================
  This file is part of a Microsoft SQL Server Shared Source Application.
  Copyright (C) Microsoft Corporation.  All rights reserved.
 
THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.
======================================================= */


namespace Microsoft.SqlCommunity.FaultRetry
{
    /// <summary>
    /// Classes which implement this interface can supply a list of principal and mirror servers recently used
    /// plus they can supply the current principal and mirror servers.  This interface is implemented by 
    /// the ConfigureDialog class and this interface is used by DataAccess class when it needs to persist the
    /// list of servers to isolated storage.
    /// </summary>
    public interface IServerListsSource
    {
        /// <summary>
        /// Returns a set of ServerSet objects.  Each ServerSet object represents a pair of servers: the principal and its mirror.
        /// </summary>
        ServerSets AllServers { get; set; }

        /// <summary>
        /// Returns an object which represets the pair of current servers: the principal and its mirror.
        /// </summary>
        ServerSet CurrentServers { get; set; }

    }
}
